package io;

import java.io.*;

/**
 * 使用缓冲字符输入流按行读取字符串
 * java.io.BufferedReader是缓冲字符输入流，内部默认有一个8192长的char数组
 * 总是以块读来保证读取文本数据的效率
 * 它提供了一个独有的方法:readLine(),可以按行读取字符串
 */
public class BRDemo {
    public static void main(String[] args) throws IOException {
        FileInputStream fis = new FileInputStream("./src/main/java/io/BRDemo.java");
        InputStreamReader isr = new InputStreamReader(fis);

        BufferedReader br = new BufferedReader(isr);
 /*
            String readLine()
            读取一行字符串，以换行符作为结束标志，返回的字符串中不含有最后的换行符
            特殊:
            如果读取到了空行(这一行只有一个换行符)此时返回值为一个空字符串
            如果读取到了流的末尾，则返回null
         */
//读取一行（）
//        String line = br.readLine();
//        System.out.println(line);

        String line;
        while ((line = br.readLine())!=null){
            System.out.println(line);
        }


    }
}
